package com.ryskoo.common.dto.promotion;

import com.ryskoo.common.constant.CouponConstant;
import com.ryskoo.common.dto.BasicDTO;
import com.ryskoo.common.dto.stock.StockDTO;

import java.util.List;

/**
 * 优惠券明细
 * 
 * @author huanghe
 */
public class CouponDetailDTO extends BasicDTO {

	private static final long serialVersionUID = -6976795076096081378L;

	/* 优惠券uuid */
	private String couponUuid;

	/* 优惠券名称 */
	private String couponName;

	/* 商户ID */
	private String vendorUuid;

	/* 面值 */
	private double couponPrice;

	/* 使用条件 订单满多少 不限为0 */
	private double reachPrice;

	/* 有效时间 */
	private String startValidTime;

	/* 有效时间 */
	private String endValidTime;

	/* 状态: 1.未使用  2.已使用  3.作废 */
	private int state;

	/* 领取时间 */
	private String receiveTime;

	/* 优惠券类别： 1:全场券  2:单品券 */
	private int couponType;

	/* 使用终端： 0：通用  1：pc   3：APP 4：小程序  5：H5*/
	private String couponClient;

	/* 启用状态 */
	private boolean enableState;

	/* 所属会员 */
	private String customerUuid;

	/* 所属会员名 */
	private String customerName ;

	/* 使用订单ID */
	private String orderId;

	/* 订单金额 */
	private double orderPrice;

	/* 会员使用时间 */
	private String useTime;

	private String stateName;

	// 优惠券关联的商品list
	private List<StockDTO> productList ;


	public String getCouponUuid() {
		return couponUuid;
	}

	public void setCouponUuid(String couponUuid) {
		this.couponUuid = couponUuid;
	}

	public String getCouponName() {
		return couponName;
	}

	public void setCouponName(String couponName) {
		this.couponName = couponName;
	}

	public String getVendorUuid() {
		return vendorUuid;
	}

	public void setVendorUuid(String vendorUuid) {
		this.vendorUuid = vendorUuid;
	}

	public double getCouponPrice() {
		return couponPrice;
	}

	public void setCouponPrice(double couponPrice) {
		this.couponPrice = couponPrice;
	}

	public double getReachPrice() {
		return reachPrice;
	}

	public void setReachPrice(double reachPrice) {
		this.reachPrice = reachPrice;
	}

	public String getStartValidTime() {
		return startValidTime;
	}

	public void setStartValidTime(String startValidTime) {
		this.startValidTime = startValidTime;
	}

	public String getEndValidTime() {
		return endValidTime;
	}

	public void setEndValidTime(String endValidTime) {
		this.endValidTime = endValidTime;
	}

	public int getState() {
		return state;
	}

	public void setState(int state) {
		this.state = state;
	}

	public String getReceiveTime() {
		return receiveTime;
	}

	public void setReceiveTime(String receiveTime) {
		this.receiveTime = receiveTime;
	}

	public int getCouponType() {
		return couponType;
	}

	public void setCouponType(int couponType) {
		this.couponType = couponType;
	}

	public String getCouponClient() {
		return couponClient;
	}

	public void setCouponClient(String couponClient) {
		this.couponClient = couponClient;
	}

	public boolean isEnableState() {
		return enableState;
	}

	public void setEnableState(boolean enableState) {
		this.enableState = enableState;
	}

	public String getCustomerUuid() {
		return customerUuid;
	}

	public void setCustomerUuid(String customerUuid) {
		this.customerUuid = customerUuid;
	}

	public String getCustomerName() {
		return customerName;
	}

	public void setCustomerName(String customerName) {
		this.customerName = customerName;
	}

	public String getOrderId() {
		return orderId;
	}

	public void setOrderId(String orderId) {
		this.orderId = orderId;
	}

	public double getOrderPrice() {
		return orderPrice;
	}

	public void setOrderPrice(double orderPrice) {
		this.orderPrice = orderPrice;
	}

	public String getUseTime() {
		return useTime;
	}

	public void setUseTime(String useTime) {
		this.useTime = useTime;
	}

	public List<StockDTO> getProductList() {
		return productList;
	}

	public void setProductList(List<StockDTO> productList) {
		this.productList = productList;
	}

	public String getStateName() {
		return CouponConstant.UseStateEnum.getNameByValue(this.state);
	}

	public void setStateName(String stateName) {
		this.stateName = stateName;
	}
	
}
